def func():
    print('ok')

if __name__ == '__main__':
    func()


# __name__ 的值是 __main__ ，这表示模块的名称是"__main__",
print(__name__)
# __file__ 是文件的完整路径
print(__file__)

# 当脚本被直接执行时，模块属性__name__ 等于__main__
# 当脚本被其他模块引入时，模块属性__name__ 等于脚本名称去掉.py 后剩余的部分

# 3、终极目的---测试模块里函数
# 由于一个脚本被引入时，自身的代码会被执行，因此我们在每个脚本里都写上一段if __name__ == '__main__': 
# 如果你希望一些代码只有在脚本被直接执行时才执行，那么就把这些代码放入到if 语句块中，最常见的情形就是测试代码,下面我对utils.py 进行修改
def safe_division(a, b):
    if b == 0:
        return None

    return a/b

if __name__ == '__main__':
    print(safe_division(10, 5) == 2)
    print(safe_division(10, 0) == None)